Method and apparatus for animating transitions between search results

ABSTRACT

The technology described relates to animated transitions between consecutive sets of search engine results.

BACKGROUND

Consecutive web searches by a client replace the results of the oldsearch query with the search results of the new search query. When thenew search query includes a switch to a new search corpus, it can beunclear whether the new search results are related to the old searchresults. Similarly, when the new search query has a refinement of aquery term—for example, a spelling correction, a new query term, arelated query term, or other query refinement—it is again unclear howthe refinement reorders or otherwise modifies the search results.

SUMMARY

The technology disclosed relates to a method of visually indicatingrelationships between different sets of search results. The differentsearch results include a first plurality of search results responsive toa first search engine query from a client system, and a second pluralityof search results responsive to a second search engine query from theclient system.

In one implementation, a server sends instructions to the client system.The instructions are executable by the client system to indicate resultscommon to the first plurality of search results and the second pluralityof search results with an animated transition of the hyperlinks movingalong paths having origins at positions of the hyperlinks in the firstplurality of search results and destinations at positions of thehyperlinks in the second plurality of search results. An example of aresult is a hyperlink to a hyperlinked Uniform Resource Locator.

In another implementation, the client system indicates the resultscommon to the first plurality of search results and the second pluralityof search results with an animated transition of the hyperlinks movingalong paths having origins at positions of the hyperlinks in the firstplurality of search results and destinations at positions of thehyperlinks in the second plurality of search results. An example of aresult is a hyperlink to a hyperlinked Uniform Resource Locator. Anexample of a client system includes a browser extension which indicatesthe results.

In yet another implementation, a non-transitory computer readable mediumhas instructions stored thereon which, when executed by one or morecomputers, cause the one or more computers to perform operations tovisually indicating relationships between the different sets of searchresults. The computer executable instructions indicate the resultscommon to the first plurality of search results and the second pluralityof search results with an animated transition of the hyperlinks movingalong paths having origins at positions of the hyperlinks in the firstplurality of search results and destinations at positions of thehyperlinks in the second plurality of search results. An example of aresult is a hyperlink to a hyperlinked Uniform Resource Locator.

Various embodiments include one or more of the following features, whichcan be performed by the client system or the server or in combination.

The hyperlinked Uniform Resource Locators common to the first pluralityof search results and the second plurality of search results areidentified. The identified hyperlinked Uniform Resource Locators areindicated by the animated transition.

Various hyperlinked Uniform Resource Locators are omitted from theanimated transition, for example those that fail to refer to a distinctweb document, and/or those that generate an additional plurality ofsearch results.

The animated transition from the first plurality of search results tothe second plurality of search results reduces visual discontinuity, forexample, by changing a visual appearance of an animated element to matcha destination hyperlink in the second plurality of search results priorto the animated element reaching the destination hyperlink.

The first search engine query and the second search engine query aredirected at different search corpuses, and the animated transitionindicates the hyperlinks to hyperlinked Uniform Resource Locators commonto the different search corpuses.

Comparison accuracy among hyperlinked Uniform Resource Locators of thefirst plurality of search results and the second plurality of searchresults is increased by removing parameters from the hyperlinked UniformResource Locators.

Within the first plurality of search results and within the secondplurality of search results, multiple instances of a same hyperlinkedUniform Resource Locator are searched to select one of the multipleinstances for the animated transition. This selection has variousalternatives. For example, in the animated transition, a Document ObjectModel tree element enclosing the multiple instances of the samehyperlinked Uniform Resource Locator is animated. In another example, inresponse to finding a first Document Object Model tree element thatencloses the multiple instances of the same hyperlinked Uniform ResourceLocator and that also encloses a different hyperlinked Uniform ResourceLocator, a second Document Object Model tree element at a lower levelthan the first Document Object Model tree element is animated. In afurther alternative, text-only instances of the same hyperlinked UniformResource Locator are favored over non-text-only instances of the samehyperlinked Uniform Resource Locator for use in the animated transition.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example overall architecture, includinga client system with a web browser that displays an animated transitionand a search engine providing search engine results.

FIG. 2 is an example process flow of animating transitions betweensearch results.

FIG. 3 is an example process flow of identifying transitionable elementsin search results.

FIG. 4 is an example process flow of merging transitionable elements.

FIGS. 5-7 are a series of screen shots showing an example of an animatedtransition between search engine results.

FIGS. 8-11 are another series of screen shots showing more examples ofanimated transitions between search engine results.

FIG. 12 is a block diagram of a computer system configured forperforming animated transitions between search engine results.

FIG. 13 is a diagram of a computer readable memory with logic forperforming animated transitions between search engine results.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of an example overall architecture, includinga client with a web browser and a search engine providing search engineresults.

The client 110 has a web browser 115 that displays an animatedtransition. The client 110 sends first and second search queries 151 toa search engine 130. The search engine 130 returns search engine results155, displayed at the client as search engine results of the firstsearch query 121 and search engine results of the first search query122. The search engine result animation 125 shows a transition betweenthe sets of search engine results.

The underlying work supporting the animated transition can be performedat the client 110, the search engine 130 or other server 160, or acombination. The server 160 can send instructions to the client 110, forexample precomputed Flash or Javascript code, which when executed by theclient 110 perform the animated transition. The client 110 can executecode, which can be the code sent from the server 160 or previouslyinstalled code, for example Javascript code or a web browser extension.Details about the animated transitions are discussed below.

FIG. 2 is an example process flow of animating transitions betweensearch results. The order of this process flow is an example and can bereordered.

At 211 a first search query is sent from the client to a search engine.At 213 the first search engine results are received by the client anddisplayed. At 215 a second search query is sent from the client to thesearch engine. At 217 the second search engine results are received bythe client.

The following parts of the process flow can be performed at the client,the server, or combination of the client and server. At 219transitionable elements are identified from the first and second searchengine results. Transitionable elements are hyperlinks for thehyperlinked URLs, or Uniform Resource Locators, in the search engineresults that are candidates for an animated transition between the firstand second search engine results. The process of identifying candidatehyperlinked URLs is further discussed in connection with FIG. 3.

Identifying a transitionable element is nontrivial, particularly forsearch results that are actually groupings of multiple individualresults. In such cases, multiple transitionable elements are merged intoa single transitionable element; at 221 transitionable elements from thehyperlinks to hyperlinked URLs that match each other within the firstset of search results are merged, and transitionable elements from thehyperlinks to hyperlinked URLs that match each other within the secondset search results are merged. For example, merging combines multipleURLs that are part of the same search result into a singletransitionable element. An example of such merging is shown in FIGS.5-7, discussed below. The process of merging transitionable elements isfurther discussed in connection with FIG. 4.

At 223 transitionable element URLs that match between the first andsecond sets of search results are identified. A subsequent animatedtransition visually indicates URLs that match between the older firstset of search results and the newer second set of search results.

At 225 the animated transition is performed between the remainingtransitionable element URLs that match between the first and second setsof search results. Styling elements of the hyperlinks are preserved toprevent visual discontinuity during the animated transition. To preventa visual discontinuity at the end of the visual animation, the animatedoriginal result is replaced with a copy of the target result, before theoriginal result has reached the target position. The animated targetresult continues until landing at the final position at the second setof search results. Because the animated target result matches the targetresult at the second set of search results, there is no visualdiscontinuity at the end of the animated transition. An example of suchvisual continuity is shown in FIGS. 8-11, discussed below. At 227following the animated transition, the client displays the second set ofsearch engine results.

FIG. 3 is an example process flow of identifying transitionable elementsin search results, providing more details about 219 in FIG. 2.

The identification of transitionable elements that are candidates for ananimated transition between the first and second search engine results,assists the subsequent process of identifying URLs that match betweenthe first and second sets of search results. At 313 the hyperlinked URLsare omitted from being candidates for animated transition, if thehyperlinked URLs generate more search results, and/or the hyperlinkedURLs fail to refer to a distinct web document. For example, selected CSSor Cascading Style Sheet classes are blacklisted. An example of ablacklisted CSS class is “gl”, which indicates that the hyperlinked URLis a gray line link. At 315, extra parameters are removed from eachhyperlinked URL, increasing comparison accuracy to identify matchingURLs, resulting in “cleaned-up” URLs. The cleaned-up URL acts as a “key”which increases accuracy of comparison with other cleaned-up URLs. At317, cleaned-up URLs with a single hyperlink are identified. Suchcleaned-up hyperlinked URLs are ready for matching between the first andsecond sets of search results.

The process of FIG. 3 is performed within the first set of searchresults, and within the second set of search results. In case there aremultiple hyperlinks within the first set of search results for acleaned-up URL, or there are multiple hyperlinks within the second setof search results for a cleaned-up URL, the merging process of FIG. 4 isperformed.

FIG. 4 is an example process flow of merging transitionable elementswhen multiple transitionable elements have the same cleaned-up URL,providing more details about 221 in FIG. 2. For example, a video searchresult contains at least two transitionable elements having the samecleaned-up URL—one containing a thumbnail of a frame from the video andone with the video's title. To identify the transitionable element forthe animated transition, the lowest DOM (Document Object Model) elementis identified containing both results. This lowest DOM element is deemedthe transitionable element.

At 441, the DOM tree element that encloses the multiple copies of thesame cleaned-up hyperlinked URL is found. At 443, if the enclosing DOMtree element does not enclose other hyperlinked URLs, then thatenclosing DOM tree element is the transitionable element in the animatedtransition. At 445, if the enclosing DOM tree element does enclose otherhyperlinked URLs, then a lower-level DOM tree element is thetransitionable element in the animated transition. However, in this casethere can be ties between lower-level DOM tree elements at the same treelevel. At 447, to break such ties between cleaned-up URLs with multiplehyperlinked URLs, text-only hyperlinks are favored over non-texthyperlinks, and/or earlier appearing hyperlinks are favored over laterappearing hyperlinks, or later appearing hyperlinks are favored overearlier appearing hyperlinks. The process of FIG. 4 is performed withinthe first set of search results and within the second set of searchresults. Such merged and cleaned-up hyperlinked URLs are ready formatching between the first and second sets of search results.

FIGS. 5-7 are a series of screen shots showing an example of an animatedtransition between search engine results, when a user switches from an“Everything” search results page to “Videos”.

FIG. 5 is a screen shot of a first set of search engine results with“Everything” selected as a search corpus. The video entitled “Coverageof Example News Event” is transitionable element 550, which is animatedin this example of an animated transition. Transitionable element 550 isa DOM tree element that encloses the multiple references to the samehyperlinked URL; the same URL is hyperlinked to a video frame thumbnailand a text video title.

FIG. 6 is a screen shot of an intermediate point of an animatedtransition from the first set of search engine results in FIG. 5 to thesecond set of search engine results in FIG. 7. The transitionableelement 650 is at an intermediate point between the origin point in FIG.5 and the destination point in FIG. 7. The first set of search engineresults are removed by fading or without fading, and the animatedtransition occurs on a plain background. After the animated transition,the second set of search engine results fade in or appear without fadingin.

Other examples of ways to replace the first set of search engine resultswith the second set of search engine results, in combination with theanimated transition, include: replacing the first set of search engineresults with the second set of search engine results and then performingthe animated transition; performing a cross-fade between the first setof search engine results and the second set of search engine resultswhile performing the animated transition; and leaving the first set ofsearch engine results in place until the animated transition iscomplete, and then replacing the first set of search engine results withthe second set of search engine results.

FIG. 7 is a screen shot of the second set of search engine results thatoverlaps slightly with the first set, that includes transitionableelement 650. The second set of search engine results are responsive to achange in search corpus. Transitionable element 650 from FIG. 6 hasreached the destination point 750 of the example animated transition.Transitionable element 750 is also a DOM tree element which encloses themultiple copies of the same hyperlinked URL, including a video framethumbnail and a text video title.

FIGS. 8-11 are another series of screen shots showing more examples ofanimated transitions between search engine results, when a user switchesfrom an “Everything” search results page to “News”. In this series, twoanimated transitions occur simultaneously.

FIG. 8 is a screen shot of a first set of search engine results. Theshown results are responsive to a first search query of a first searchcorpus. The hyperlink entitled “Locals affected by . . . ” istransitionable element 860, which is the origin point of the path of afirst animated transition of a hyperlink. The hyperlink entitled “NewsBlog—Example . . . ” is transitionable element 870, which is the originpoint of the path a second animated transition of a hyperlink.

FIGS. 9 and 10 are sequential screen shots of intermediate points alongthe paths of animated transitions of hyperlinks from the first set ofsearch engine results in FIG. 8 to the second set of search engineresults in FIG. 11. Between FIGS. 9 and 10, in the first animatedtransition, animated original result 960 is replaced with an animatedtarget result 1060. Between FIGS. 9 and 10, in the second animatedtransition, animated original result 970 is replaced with an animatedtarget result 1070. Because the animated elements match the targetresults, there is no visual discontinuity at the conclusions of theanimated transitions.

FIG. 11 is a screen shot of a first set of search engine results. Theshown results are responsive to a second search query of a second searchcorpus. Transitionable element 860 is the destination point of the pathof the first animated transition of a hyperlink. For the first animatedtransition, the source result “Locals affected by . . . ” atexample.com/anothernewssite/local was in an animated transition to thetarget result “Locals affected by . . . ” atexample.com/anothernewssite/local.

Transitionable element 870 is the destination point of the path of thesecond animated transition of a hyperlink. For the second animatedtransition, the source result “News Blog—Example . . . ” atexample.com/anewsblog/html in FIG. 8 was in an animated transition tothe target result “Example News Event Updates . . . ” atexample.com/localnewssite/html in FIG. 11.

FIG. 12 is a block diagram of a computer system configured forperforming animated transitions between search engine results.

Computer system 1210 typically includes at least one processor 1214which communicates with a number of peripheral devices via bus subsystem1212. These peripheral devices may include a storage subsystem 1224,comprising for example memory devices and a file storage subsystem, userinterface input devices 1222, user interface output devices 1220, and anetwork interface subsystem 1216. The input and output devices allowuser interaction with computer system 1210. Network interface subsystem1216 provides an interface to outside networks, including an interfaceto communication network 1218, and is coupled via communication network1218 to corresponding interface devices in other computer systems.Communication network 1218 may comprise many interconnected computersystems and communication links. These communication links may bewireline links, optical links, wireless links, or any other mechanismsfor communication of information. While in one embodiment, communicationnetwork 1218 is the Internet, in other embodiments, communicationnetwork 1218 may be any suitable computer network.

User interface input devices 1222 may include a keyboard, pointingdevices such as a mouse, trackball, touchpad, or graphics tablet, ascanner, a touchscreen incorporated into the display, audio inputdevices such as voice recognition systems, microphones, and other typesof input devices. In general, use of the term “input device” is intendedto include all possible types of devices and ways to input informationinto computer system 1210 or onto communication network 1218.

User interface output devices 1220 may include a display subsystem, aprinter, a fax machine, or non-visual displays such as audio outputdevices. The display subsystem may include a cathode ray tube (CRT), aflat-panel device such as a liquid crystal display (LCD), a projectiondevice, or some other mechanism for creating a visible image. Thedisplay subsystem may also provide non-visual display such as via audiooutput devices. In general, use of the term “output device” is intendedto include all possible types of devices and ways to output informationfrom computer system 1210 to the user or to another machine or computersystem.

Storage subsystem 1224 stores the basic programming and data constructsthat provide the functionality of some or all of the tools describedherein, including the logic for performing animated transitions betweensearch engine results. These software modules are generally executed byprocessor 1214 alone or in combination with other processors.

Memory used in the storage subsystem can include a number of memoriesincluding a main random access memory (RAM) for storage of instructionsand data during program execution and a read only memory (ROM) in whichfixed instructions are stored. A file storage subsystem can providepersistent storage for program and data files, and may include a harddisk drive, a floppy disk drive along with associated removable media, aCD-ROM drive, an optical drive, or removable media cartridges. Thedatabases and modules implementing the functionality of certainembodiments may be stored by file storage subsystem in the storagesubsystem 1224, or in other machines accessible by the processor.

Bus subsystem 1212 provides a mechanism for letting the variouscomponents and subsystems of computer system 1210 communicate with eachother as intended. Although bus subsystem 1212 is shown schematically asa single bus, alternative embodiments of the bus subsystem may usemultiple busses.

Computer system 1210 can be of varying types including a personalcomputer, a portable computer, a workstation, a computer terminal, anetwork computer, a television, a mainframe, or any other dataprocessing system or computing device. Due to the ever-changing natureof computers and networks, the description of computer system 1210depicted in FIG. 12 is intended only as a specific example for purposesof illustrating example embodiments. Many other configurations ofcomputer system 1210 are possible having more or less components thanthe computer system depicted in FIG. 12.

FIG. 13 is a diagram of a computer readable memory with logic forperforming animated transitions between search engine results in acomputer readable memory 245. The memory 245 can comprise a medium forexample associated with file storage subsystem 224, and/or with networkinterface subsystem 216, or can comprise a data storage medium in aseparate device. The medium used for the computer readable memory 245can be a non-transitory medium, such as a hard disk, a floppy disk, aCDROM, an integrated circuit memory device, an optical medium, andremovable media cartridge. The logic as described herein can also beembodied by data coded on a transitory medium, such as a radiocommunication channel.

While new technology is disclosed by reference to the preferredembodiments and examples detailed above, it is understood that theseexamples are intended in an illustrative rather than in a limitingsense.

It is contemplated that modifications and combinations will readilyoccur to those skilled in the art, which modifications and combinationswill be within the spirit of the invention and the scope of thefollowing claims.

The invention claimed is:
 1. A method of visually indicatingrelationships between different sets of search results including a firstplurality of search results responsive to a first search engine queryfrom a client system and a second plurality of search results responsiveto a second search engine query from the client system, including: aserver sending instructions to the client system, the instructionsexecutable by the client system to indicate hyperlinks to hyperlinkedUniform Resource Locators common to the first plurality of searchresults and the second plurality of search results with an animatedtransition of the hyperlinks moving along paths having origins atpositions of the hyperlinks in the first plurality of search results anddestinations at positions of the hyperlinks in the second plurality ofsearch results; and omitting, from the animated transition, one or morehyperlinked Uniform Resource Locators that fail to refer to a distinctweb document.
 2. The method of claim 1, further comprising: identifyingthe hyperlinked Uniform Resource Locators common to the first pluralityof search results and the second plurality of search results.
 3. Themethod of claim 1, further comprising: omitting, from the animatedtransition, one or more hyperlinked Uniform Resource Locators thatgenerate an additional plurality of search results.
 4. The method ofclaim 1, wherein the animated transition from the first plurality ofsearch results to the second plurality of search results reduces visualdiscontinuity by changing a visual appearance of an animated element tomatch a destination hyperlink in the second plurality of search resultsprior to the animated element reaching the destination hyperlink.
 5. Themethod of claim 1, wherein the first search engine query and the secondsearch engine query are directed at different search corpuses, and theanimated transition indicates the hyperlinks to hyperlinked UniformResource Locators common to the different search corpuses.
 6. The methodof claim 1, wherein identifying hyperlinked Uniform Resource Locatorscommon to the first plurality of search results and the second pluralityof search results, includes: increasing accuracy of comparison among thehyperlinked Uniform Resource Locators by removing parameters from thehyperlinked Uniform Resource Locators of the first plurality of searchresults and the second plurality of search results.
 7. The method ofclaim 1, further including: within the first plurality of search resultsand within the second plurality of search results, searching formultiple instances of a same hyperlinked Uniform Resource Locator toselect one of the multiple instances for the animated transition.
 8. Amethod of visually indicating relationships between different sets ofsearch results including a first plurality of search results responsiveto a first search engine query from a client system and a secondplurality of search results responsive to a second search engine queryfrom the client system, including: a server sending instructions to theclient system, the instructions executable by the client system toindicate hyperlinks to hyperlinked Uniform Resource Locators common tothe first plurality of search results and the second plurality of searchresults with an animated transition of the hyperlinks moving along pathshaving origins at positions of the hyperlinks in the first plurality ofsearch results and destinations at positions of the hyperlinks in thesecond plurality of search results; within the first plurality of searchresults and within the second plurality of search results, searching formultiple instances of a same hyperlinked Uniform Resource Locator toselect one of the multiple instances for the animated transition; and inthe animated transition, animating a Document Object Model tree elementenclosing the multiple instances of the same hyperlinked UniformResource Locator.
 9. A method of visually indicating relationshipsbetween different sets of search results including a first plurality ofsearch results responsive to a first search engine query from a clientsystem and a second plurality of search results responsive to a secondsearch engine query from the client system, including: a server sendinginstructions to the client system, the instructions executable by theclient system to indicate hyperlinks to hyperlinked Uniform ResourceLocators common to the first plurality of search results and the secondplurality of search results with an animated transition of thehyperlinks moving along paths having origins at positions of thehyperlinks in the first plurality of search results and destinations atpositions of the hyperlinks in the second plurality of search results;within the first plurality of search results and within the secondplurality of search results, searching for multiple instances of a samehyperlinked Uniform Resource Locator to select one of the multipleinstances for the animated transition; and in response to finding afirst Document Object Model tree element that encloses the multipleinstances of the same hyperlinked Uniform Resource Locator and that alsoencloses a different hyperlinked Uniform Resource Locator, animating asecond Document Object Model tree element at a lower level than thefirst Document Object Model tree element.
 10. A method of visuallyindicating relationships between different sets of search resultsincluding a first plurality of search results responsive to a firstsearch engine query from a client system and a second plurality ofsearch results responsive to a second search engine query from theclient system, including: a server sending instructions to the clientsystem, the instructions executable by the client system to indicatehyperlinks to hyperlinked Uniform Resource Locators common to the firstplurality of search results and the second plurality of search resultswith an animated transition of the hyperlinks moving along paths havingorigins at positions of the hyperlinks in the first plurality of searchresults and destinations at positions of the hyperlinks in the secondplurality of search results; within the first plurality of searchresults and within the second plurality of search results, searching formultiple instances of a same hyperlinked Uniform Resource Locator toselect one of the multiple instances for the animated transition; andfavoring text-only instances of the same hyperlinked Uniform ResourceLocator over non-text-only instances of the same hyperlinked UniformResource Locator for use in the animated transition.
 11. A method ofvisually indicating relationships between different sets of searchresults including a first plurality of search results responsive to afirst search engine query from a client system and a second plurality ofsearch results responsive to a second search engine query from theclient system, including: the client system indicating hyperlinks to thehyperlinked Uniform Resource Locators common to the first plurality ofsearch results and the second plurality of search results with ananimated transition of the hyperlinks moving along paths having originsat positions of the hyperlinks in the first plurality of search resultsand destinations at positions of the hyperlinks in the second pluralityof search results; and omitting, from the animated transition, one ormore hyperlinked Uniform Resource Locators that fail to refer to adistinct web document.
 12. The method of claim 11, further comprising:identifying the hyperlinked Uniform Resource Locators common to thefirst plurality of search results and the second plurality of searchresults.
 13. The method of claim 11, further comprising: omitting, fromthe animated transition, one or more hyperlinked Uniform ResourceLocators that generate an additional plurality of search results. 14.The method of claim 11, wherein the animated transition from the firstplurality of search results to the second plurality of search resultsreduces visual discontinuity by changing a visual appearance of ananimated element to match a destination hyperlink in the secondplurality of search results prior to the animated element reaching thedestination hyperlink.
 15. The method of claim 11, wherein the firstsearch engine query and the second search engine query are directed atdifferent search corpuses, and the animated transition indicates thehyperlinks to hyperlinked Uniform Resource Locators common to thedifferent search corpuses.
 16. The method of claim 11, whereinidentifying hyperlinked Uniform Resource Locators common to the firstplurality of search results and the second plurality of search results,includes: increasing accuracy of comparison among the hyperlinkedUniform Resource Locators by removing parameters from the hyperlinkedUniform Resource Locators of the first plurality of search results andthe second plurality of search results.
 17. The method of claim 11,further including: within the first plurality of search results andwithin the second plurality of search results, searching for multipleinstances of a same hyperlinked Uniform Resource Locator to select oneof the multiple instances for the animated transition.
 18. A method ofvisually indicating relationships between different sets of searchresults including a first plurality of search results responsive to afirst search engine query from a client system and a second plurality ofsearch results responsive to a second search engine query from theclient system, including: the client system indicating hyperlinks to thehyperlinked Uniform Resource Locators common to the first plurality ofsearch results and the second plurality of search results with ananimated transition of the hyperlinks moving along paths having originsat positions of the hyperlinks in the first plurality of search resultsand destinations at positions of the hyperlinks in the second pluralityof search results; within the first plurality of search results andwithin the second plurality of search results, searching for multipleinstances of a same hyperlinked Uniform Resource Locator to select oneof the multiple instances for the animated transition; and in theanimated transition, animating a Document Object Model tree elementenclosing the multiple instances of the same hyperlinked UniformResource Locator.
 19. A method of visually indicating relationshipsbetween different sets of search results including a first plurality ofsearch results responsive to a first search engine query from a clientsystem and a second plurality of search results responsive to a secondsearch engine query from the client system, including: the client systemindicating hyperlinks to the hyperlinked Uniform Resource Locatorscommon to the first plurality of search results and the second pluralityof search results with an animated transition of the hyperlinks movingalong paths having origins at positions of the hyperlinks in the firstplurality of search results and destinations at positions of thehyperlinks in the second plurality of search results; within the firstplurality of search results and within the second plurality of searchresults, searching for multiple instances of a same hyperlinked UniformResource Locator to select one of the multiple instances for theanimated transition; and in response to finding a first Document ObjectModel tree element that encloses the multiple instances of the samehyperlinked Uniform Resource Locator and that also encloses a differenthyperlinked Uniform Resource Locator, animating a second Document ObjectModel tree element at a lower level than the first Document Object Modeltree element.
 20. A method of visually indicating relationships betweendifferent sets of search results including a first plurality of searchresults responsive to a first search engine query from a client systemand a second plurality of search results responsive to a second searchengine query from the client system, including: the client systemindicating hyperlinks to the hyperlinked Uniform Resource Locatorscommon to the first plurality of search results and the second pluralityof search results with an animated transition of the hyperlinks movingalong paths having origins at positions of the hyperlinks in the firstplurality of search results and destinations at positions of thehyperlinks in the second plurality of search results; within the firstplurality of search results and within the second plurality of searchresults, searching for multiple instances of a same hyperlinked UniformResource Locator to select one of the multiple instances for theanimated transition; and favoring text-only instances of the samehyperlinked Uniform Resource Locator over non-text-only instances of thesame hyperlinked Uniform Resource Locator for use in the animatedtransition.
 21. A non-transitory computer readable medium havinginstructions stored thereon which, when executed by one or morecomputers, cause the one or more computers to perform operationscomprising: visually indicating relationships between different sets ofsearch results including a first plurality of search results responsiveto a first search engine query from a client system and a secondplurality of search results responsive to a second search engine queryfrom the client system comprising: indicating the hyperlinked UniformResource Locators common to the first plurality of search results andthe second plurality of search results with an animated transition ofthe hyperlinks moving along paths having origins at positions of thehyperlinks in the first plurality of search results and destinations atpositions of the hyperlinks in the second plurality of search results;and omitting, from the animated transition, one or more hyperlinkedUniform Resource Locators that fail to refer to a distinct web document.